package com.yzxb.erpsystem.service;

import com.yzxb.erpsystem.entity.Supplier;

import java.util.List;
import java.util.Optional;

public interface SupplierService {
    
    /**
     * 创建供应商
     */
    Supplier createSupplier(Supplier supplier);
    
    /**
     * 更新供应商
     */
    Supplier updateSupplier(Long id, Supplier supplier);
    
    /**
     * 删除供应商
     */
    void deleteSupplier(Long id);
    
    /**
     * 根据ID查询供应商
     */
    Optional<Supplier> getSupplierById(Long id);
    
    /**
     * 根据供应商编码查询供应商
     */
    Optional<Supplier> getSupplierBySupplierCode(String supplierCode);
    
    /**
     * 查询所有供应商
     */
    List<Supplier> getAllSuppliers();
    
    /**
     * 根据状态查询供应商列表
     */
    List<Supplier> getSuppliersByStatus(String status);
    
    /**
     * 启用供应商
     */
    Supplier enableSupplier(Long id);
    
    /**
     * 禁用供应商
     */
    Supplier disableSupplier(Long id);
}